package org.acm.seguin.refactor.type; import org.acm.seguin.parser.ChildrenVisitor; import org.acm.seguin.parser.ast.ASTName; import org.acm.seguin.parser.ast.ASTUnmodifiedClassDeclaration; /** * Description of the Class * *@author Chris Seguin */ public class RenameParentVisitor extends ChildrenVisitor { /** * To visit a node * *@param node The node we are visiting *@param data The rename type data *@return The rename type data */ public Object visit(ASTUnmodifiedClassDeclaration node, Object data) { RenameTypeData rtd = (RenameTypeData) data; String oldName = rtd.getOld().getName(); if (oldName.equals(node.getName())) { if (node.jjtGetChild(0) instanceof ASTName) { node.jjtAddChild(rtd.getNew(), 0); } else { node.jjtInsertChild(rtd.getNew(), 0); } } return data; } }